In recent years, memory systems comprising nonvolatile memories are widely prevailing.
As one of such memory systems, a solid state drive (SSD) provided with a NAND flash memory is known. SSDs are used as main storages of various computing devices.
In the NAND flash memory, wear in the tunnel oxide films of memory cells may occur due to repetitive application of a programming voltage or an erasing voltage to each of these memory cells. Due to wear in the memory cell (wear in the tunnel oxide film), there is a possibility that a program operation or an erase operation on the NAND flash memory fails.
For example, when an erase operation of a certain physical block in the NAND flash memory is unsuccessful, a fail status indicating a failure in the erase operation is notified by the NAND flash memory to a controller in the SSD. In this case, in the SSD, this physical block may be treated as an unusable defective block (i.e., bad block).
However, when the number of physical blocks treated as bad blocks increases, the total physical capacity of the SSD is reduced. As a result, a capacity of the SSD which can be utilized as a spare area (over-provision) is reduced, and thus the performance and reliability of the SSD also deteriorate. If the total physical capacity falls below the user capacity due to a further increase in the number of bad blocks, it becomes impossible for the SSD to serve as storage. Accordingly, the increase in the number of physical blocks treated as bad blocks constitutes a factor shortening the life of the SSD.